package cn.cdeden.knowledge.service;

import cn.cdeden.common.core.utils.page.TableDataInfo;
import cn.cdeden.knowledge.domain.SysFormDoc;
import cn.cdeden.knowledge.domain.dto.SysFormDocDto;
import cn.cdeden.knowledge.domain.dto.SysFormDocQueryParam;
import com.baomidou.mybatisplus.extension.service.IService;
import org.springframework.data.domain.Pageable;

import java.util.List;
import java.util.Set;

public interface SysFormDocService extends IService<SysFormDoc>{


    /**
     * 查询数据分页
     * @param query 条件
     * @param pageable 分页参数
     * @return PageInfo<SysTextDataDto>
     */
    TableDataInfo<SysFormDocDto> queryAll(SysFormDocQueryParam query, Pageable pageable);

    /**
     * 查询所有数据不分页
     * @param query 条件参数
     * @return List<SysTextDataDto>
     */
    List<SysFormDocDto> queryAll(SysFormDocQueryParam query);

    SysFormDocDto query(SysFormDocQueryParam query);

    SysFormDoc getById(Integer id);
    SysFormDocDto findById(Integer id);

    /**
     * 插入一条新数据。
     */
    SysFormDoc insert(SysFormDocDto resources);
    boolean updateById(SysFormDocDto resources);
    boolean deleteById(Integer id);

    /**
     * 删除数据
     * @param treeNodeId 树节点编号
     * @param type 文档类型（个人文档：0 团队文档：1）
     * @return
     */
    boolean deleteByTreeNodeId(String treeNodeId,String type);
    boolean deleteByIds(Set<Integer> ids);


}
